package com.xncoding.freemarker;

import com.alibaba.fastjson.JSON;
import com.xncoding.freemarker.test01.ClassUtil;
import com.xncoding.freemarker.test01.FsLoanServiceImpl;
import org.junit.jupiter.api.Test;

import javax.validation.Valid;
import java.lang.reflect.Field;
import java.util.List;
import java.util.Random;

public class tes {
    @Test
    public void test(){

//        FsLoanServiceImpl t= new FsLoanServiceImpl();
//        Class f = t.getClass();

//        ClassUtil.printClassMethodMessage(new FsLoanServiceImpl());
//        System.out.println("------------------------------------------");
//        ClassUtil.printFieldMessage(new FsLoanServiceImpl());
        /*for (Field f : fields) {

            System.out.println(f.getName());

        }*/
        for (int i=0;i<10000;i++){

//            maopao();
//            maopao();
//            maopao();
            maopao();
//

//            cpu();
//            cpu();
//            cpu();
        }

    }

    @Test
    public void test01(){
        cpu();
    }

    public  static String maopao(){
        Random random = new Random();
        int[] arr  = random.ints(10000).toArray();//{18,13,50,15,4,17,18};

        int temp  = 0 ;
        for(int i = 0 ;i< arr.length -1; i++){
            for(int j = 0; j<arr.length-1-i; j++){
                if(arr[j]>arr[j+1]){
                    temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                    System.out.println(temp);
                }
            }

        }
        return "";
    }

    public static void cpu(){
        // 定义变量startTime和endTime
        long startTime, endTime;
        // 获取当前时间
        startTime = System.currentTimeMillis();
        // 进行循环
        while (true) {
            // 获取当前时间
            endTime = System.currentTimeMillis();
            // 判断是否达到消耗CPU时间
            if ((endTime - startTime) >= 5000) {
                System.out.println("=====================");
                break; // 跳出循环
            } else {
                // 执行空循环
                for (int i = 0; i < 100000; i++) {
                    // 空循环
                    System.out.println("-------------------");
                }
            }
        }
        // 计算并输出消耗的时间
        System.out.println("消耗的CPU时间：" + (endTime - startTime) + "毫秒");
    }

}
